vm {
	func {
		a02f = op_00_ldl;
		a034 = op_01_ldl;
		a039 = op_02_ldl;
		a03e = op_03_ldl;
		a043 = op_04_ldl;
		a048 = op_05_ldl;
		a04d = op_06_ldl;
		a052 = op_07_ldl;
		a057 = op_08_ldl;
		a05c = op_09_ldl;
		a061 = op_0a_ldl;
		a066 = op_0b_ldl;
		a075 = op_0f_ldl;
		a07a = op_0e_ldl;
		a07f = op_0d_ldl;
		a084 = op_0c_ldl;
		a08e = op_10_ldr;
		a093 = op_11_ldr;
		a098 = op_12_ldr;
		a09d = op_13_ldr;
		a0a2 = op_14_ldr;
		a0a7 = op_15_ldr;
		a0ac = op_16_ldr;
		a0b1 = op_17_ldr;
		a0b6 = op_18_ldr;
		a0bb = op_19_ldr;
		a0c0 = op_1a_ldr;
		a0c5 = op_1b_ldr;
		a0d4 = op_1f_ldr;
		a0d9 = op_1e_ldr;
		a0de = op_1d_ldr;
		a0e3 = op_1c_ldr;
		a0ed = op_20_store;
		a0f2 = op_21_store;
		a0f7 = op_22_store;
		a0fc = op_23_store;
		a101 = op_24_store;
		a106 = op_25_store;
		a10b = op_26_store;
		a110 = op_27_store;
		a115 = op_28_store;
		a11a = op_29_store;
		a11f = op_2a_store;
		a124 = op_2b_store;
		a133 = op_2f_store;
		a138 = op_2e_store;
		a13d = op_2d_store;
		a142 = op_2c_store;
		a14c = op_30_push;
		a151 = op_31_push;
		a156 = op_32_push;
		a15b = op_33_push;
		a160 = op_34_push;
		a165 = op_35_push;
		a16a = op_36_push;
		a16f = op_37_push;
		a174 = op_38_push;
		a179 = op_39_push;
		a17e = op_3a_push;
		a183 = op_3b_push;
		a191 = op_3f_push;
		a196 = op_3e_push;
		a19b = op_3d_push;
		a1a0 = op_3c_push;
		a1a9 = op_4f_ldl;
		a1b2 = op_40_ldl;
		a1b7 = op_5f_ldr;
		a1c0 = op_50_ldr;
		a1c5 = op_6f_push;
		a1cd = op_7f_add;
		a1d6 = op_70_add;
		a1d9 = op_82_ldl;
		a1de = op_81_ldl;
		a1e8 = op_a4_ldl;
		a1f2 = op_83_ldr;
		a1fc = op_84_ldr;
		a201 = op_a6_ldr;
		a20b = op_85_store;
		a215 = op_86_store;
		a21a = op_a8_store;
		a224 = op_87_push;
		a22d = op_88_push;
		a232 = op_aa_push;
		a23b = op_de_leal;
		a245 = op_df_lear;
		a24f = op_89_ldl;
		a257 = op_8a_ldl;
		a25c = op_8b_ldr;
		a264 = op_8c_ldr;
		a269 = op_8d_push;
		a270 = op_8e_push;
		a277 = op_8f_add;
		a281 = op_90_add;
		a286 = op_a0_ldl;
		a296 = op_a5_ldl;
		a2a6 = op_a1_ldr;
		a2b6 = op_a7_ldr;
		a2c6 = op_a2_store;
		a2d4 = op_a9_store;
		a2e2 = op_a3_push;
		a2f2 = op_ab_push;
		a302 = op_ea_call;
		a309 = op_e9_call;
		a315 = op_dd_call;
		a31c = op_ac_call;
		
		a325 = call1;
		a32e = call2;

		a339 = op_ad_copy;
		a34e = op_ae_unstack;
		a35a = op_af_unstack;
		a35f = op_d6_goto;
		a367 = op_d7_bnz;
		a371 = op_d8_bz;
		a377 = op_e3_jmp;
		a381 = op_e4_jmpnz;
		a38b = op_e5_jmpz;
		a391 = op_e6_jmp;
		a39b = op_e7_jmpnz;
		a3a5 = op_e8_jmpz;
		a3ab = op_d9_switchnc;
		a3d2 = op_d5_switch;
		a3f6 = op_b0_deref;
		a3fd = op_d3_deref;
		a40a = op_b1_popstore;
		a414 = op_d4_popstore;
		a422 = op_b3_pushl;
		a428 = op_b4_popr;
		a42e = op_b5_mul;
		a44c = op_b8_udiv;
		a452 = op_b6_sdiv;

		a462 = a462;

		a47d = op_b9_smod;
		a491 = op_ba_umod;

		a49b = a49b;

		a4bc = op_bb_add;
		a4c6 = op_bc_sub;
		a4d0 = op_bd_shl;
		a4de = op_bf_shr;
		a4f1 = op_be_shru;
		a4ff = op_da_and;
		a508 = op_db_or;
		a511 = op_dc_xor;
		a51a = op_c0_cmpeq;
		a526 = op_c1_cmpne;
		a532 = op_c2_cmplt;
		a53f = op_c4_cmpgt;
		a54c = op_c3_cmple;
		a559 = op_c5_cmpge;
		a566 = op_c6_cmpltu;
		a572 = op_c8_cmpgtu;
		a57e = op_c7_cmpleu;
		a58a = op_c9_cmpgeu;
		a596 = op_ca_not;
		a5a0 = op_cb_neg;
		a5a9 = op_cc_compl;
		a5b3 = op_cd_swap;
		a5be = op_d0_inc;
		a5c3 = op_d1_dec;
		a5c8 = op_d2_shl1;
		a5cd = op_e0_bfes;
		a5d9 = op_e1_bfeu;
		a5e5 = op_e2_bfi;
		a5f1 = op_cf_ret;
		a606 = op_fe_bad;
		a608 = op_ff_break;

		a60d = a60d;
		a61f = a61f;
		a640 = a640;
		a648 = a648;
		a652 = a652;

		a86a = op_b7_long;

		a8e2 = op_long_01_mul;
		a908 = op_long_02_sdiv;
		a913 = op_long_2e_divu;
		a916 = a916;
		a93b = a93b;
		a966 = op_long_2f_modu;
		a970 = op_long_1e_smod;
		a986 = op_long_03_add;
		a995 = op_long_04_sub;
		a9a4 = op_long_1f_shl;
		a9bf = op_long_20_shr;
		a9e4 = op_long_2d_shru;
		a9ff = op_long_21_comp;
		aa0e = op_long_22_and;
		aa1c = op_long_23_or;
		aa2a = op_long_24_xor;
		aa38 = op_long_05_neg;
		aa46 = op_long_28_not;
		aa4f = op_long_1d_bool;
		aa5c = op_long_06_cmpeq;
		aa6d = op_long_07_cmpne;
		aa7d = op_long_08_cmplt;
		aa8c = op_long_29_cmpltu;
		aa95 = op_long_0a_cmpgt;
		aaa4 = op_long_2b_cmpgtu;
		aaad = op_long_09_cmple;
		aabc = op_long_2a_cmpleu;
		aac5 = op_long_0b_cmpge;
		aad4 = op_long_2c_cmpgeu;
		aadd = aadd;
		aae8 = aae8;
		aaf3 = op_long_25_sext;
		aafa = op_long_26_uext;
		aafc = op_long_27_nop;
		aafd = op_long_18_ldl;
		ab0b = op_long_19_ldr;
		ab1f = op_long_1c_dec;
		ab25 = op_long_1b_inc;
		ab33 = op_long_17_popstore;
		ab45 = op_long_1a_swap;
		ab55 = op_long_0c_ldl;
		ab65 = op_long_0d_ldr;
		ab75 = op_long_0e_store;
		ab85 = op_long_0f_push;
		ab95 = op_long_10_ldl;
		aba5 = op_long_11_ldr;
		abb5 = op_long_12_store;
		abc5 = op_long_13_push;
		abd5 = op_long_14_pushl;
		abdd = op_long_15_pop_r;
		abe6 = op_long_16_deref;
	}
	
	data {
		0000 = w0;
		0001 = w1;
		0002 = SP;
		0004 = FP;
		0006 = PC;
		0008 = l0;
		0009 = l1;
		000a = l;
		000b = l3;
		000c = r0;
		000d = r1;
		000e = r;
		000f = r3;
		0010 = x0;
		0011 = x1;
		0012 = x2;
		0013 = x3;
		0014 = y0;
		0015 = y1;
		0016 = y2;
		0017 = y3;
		0018 = z0;
		0019 = z1;
		001a = z2;
		001b = z3;
	}
}
